package cn.edu.nuc.ssm.service.impl;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;

import org.apache.commons.io.FileUtils;
import org.springframework.web.multipart.MultipartFile;

public class ImgServiceImpl{
   
	/**
	 * 文件上传（上传失败返回null,数据库为空,上传成功返回文件名。数据库为文件名。）
	 * @param ppath
	 * @param file
	 * @return
	 */
	public static String imgpath(String ppath,MultipartFile file){
	    //处理文件名（以.拆分成一个数组。    并且取数组的最后一个，即文件的扩展名。   ）
		String str[]=file.getOriginalFilename().split("\\.");
	    System.out.println("文件扩展名：" + str[str.length-1]);
	    //使用UUID类的randomUUID（）方法生成一个数拼接成新的文件名。(UUID防止数据库出现同名的图片名，进行覆盖。)
	    String newfilename=UUID.randomUUID()+"."+str[str.length-1];
	    
		File d = new File(ppath);
		System.out.println(d.getAbsolutePath());
		try {
			FileUtils.copyInputStreamToFile(
			file.getInputStream(), 
			new File(d,newfilename)
		    );
	
		    return newfilename;
		} catch (IOException e) {
		    e.printStackTrace();
		}
       return null;
   }
	/**
	 * 判断文件格式。
	 * @param ppath
	 * @param file
	 * @return
	 */
	public static String exname(MultipartFile file){
	    //处理文件名（以.拆分成一个数组。    并且取数组的最后一个，即文件的扩展名。   ）
		String str[]=file.getOriginalFilename().split("\\.");

	    List<String> list = new ArrayList<String>();
	    list.add("jpg");
	    list.add("png");
	    list.add("mp4");
	    if(list.contains(str[str.length-1])){
	    	return "yes";
	    }
	    return "no";
   }
}
